package login;
import java.io.*;
import java.util.Scanner;
public class Login {
    /**
     *
     * 负责人：罗登明
     * 让用户输入用户名和密码
     * 判断文件里是否有该用户
     * 有：
     * 返回用户名
     * 没有：
     * 返回null
     */
    private static final String users_File_Path = "File\\User.txt";
    public String login() {
         Scanner scanner = new Scanner(System.in);
         System.out.println("-------登入-------");
         boolean flag =true;//标记

        String userName =null;
        String passWord =null;
         while(true)
         {
             System.out.println("输入用户名：");
             userName = scanner.next();
             System.out.println("输入密码：");
             passWord = scanner.next();
             File file = new File(users_File_Path);
             try (Reader reader = new FileReader(file);
                  BufferedReader bufferedReader = new BufferedReader(reader))
             {
                 //读取文件并对比信息
                 while (true)
                 {
                     String userMessage = bufferedReader.readLine();
                     if (userMessage == null) //文件读完仍然没有找到用户
                     {
                         System.out.println("该用户不存在,请重试");
                         break;
                     }
                     //字符串分离操作
                     String[] msg = userMessage.split(":");//用户名:密码
                     String curUserName = msg[0];//读取到的用户名
                     String curPassWord = msg[1];//读取到的密码
                     if (userName.equals(curUserName))
                     {
                         while (true)//当密码错误时可以重新输入
                         {
                             if (passWord.equals(curPassWord))
                             {
                                 System.out.println("登入成功");
                                 return userName;
                             } else {
                                 System.out.println("密码错误,请重新输入:");
                                 passWord = scanner.next();
                             }
                         }
                     }
                 }
             } catch (FileNotFoundException e) {
                 e.printStackTrace();
             } catch (IOException e) {
                 e.printStackTrace();
             }
         }
    }
}

